//
// Created by xunx on 2018/12/6.
//

#ifndef GOWILD_WINDOW_H
#define GOWILD_WINDOW_H

#include "Gowild.h"


class Display;

class Window {
public:
    Window(int width, int height, const char* title);

    virtual ~Window();

    bool WindowShouldClose();

    void WindowsClear();

    void Update();

    void GameTick(float deltaTime);

    static int GetKeysIsPress(int key);

    static int GetMousebuttonIsPress(int key);

    static glm::vec2 GetMousePosition();

private:

    void InitGLFW();

    void InitGLAD();

    void InitGLFWWindow(int width, int height, const char* title);

    GLFWwindow* window;

    Display* display;


};


#endif //GOWILD_WINDOW_H
